﻿using YY.Admin.Services.Service.User;

namespace YY.Admin.Services.Service.User
{
    public interface ISysUserService
    {
        Task<List<SysUser>> GetUsersAsync();

        Task<SqlSugarPagedList<UserOutput>> PageAsync(PageUserInput input);

        Task<int> BatchDeleteAsync(List<long> ids);

        Task<int> DeleteAsync(long id);

        Task<int> CreateAsync(SysUser sysUser);

        Task<int> UpdateAsync(SysUser sysUser);

        Task<long> ReadMaxIdAsync();

        Task<bool> AccountExistsAsync(string account, long? excludeUserId = null);

        Task<int> ToggleStatus(SysUser sysUser);
    }
}
